1
การเปลี่ยนแปลงแนวคิดด้านความสัมพันธ์ของหน่วยประมวลผลกราฟิก
AI024Lesson 6
00:00

การเปลี่ยนแปลงพื้นฐานในระบบคอมพิวเตอร์ประสิทธิภาพสูง คือการเปลี่ยนจากโมเดลการดำเนินงานแบบลำดับที่พึ่งพาหน่วยประมวลผลกลาง (CPU) มาเป็นโมเดลผู้ผลิต-ผู้บริโภคที่แยกจากกัน โดยที่หน่วยประมวลผลกลาง (CPU) จัดการลำดับการทำงาน ในขณะที่หน่วยประมวลผลกราฟิก (GPU) ทำงานอย่างอิสระ จุดสำคัญคือ หน่วยประมวลผลกราฟิก (GPU) ไม่ได้ออกแบบมาให้ถูกควบคุมในลักษณะที่ต้องรอให้เสร็จสิ้นทุกขั้นตอนอย่างสมบูรณ์หากมองและใช้งานมันในลักษณะนี้ จะเกิดจุดตึงเครียดที่ทำให้เกิดการหยุดชะงักระหว่างการประมวลผล

1. วงจรชีวิตของกระบวนการดำเนินงาน

เมื่ออยู่ในมุมมองแบบไม่พร้อมกัน (asynchronous) นักพัฒนาจะไม่รอให้แต่ละงานเสร็จสิ้น แต่จะ จัดสรร หน่วยความจำ, เริ่มต้น เคอร์เนล และ คัดลอกกลับ ผลลัพธ์โดยการส่งคำขอที่ไม่ทำให้เกิดการหยุดชะงักเข้าไปในคิวฮาร์ดแวร์

เริ่มต้นโดยหน่วยประมวลผลกลาง (CPU)การประมวลผลบนหน่วยประมวลผลกราฟิก (แบบไม่พร้อมกัน)งานอื่นๆ ของหน่วยประมวลผลกลาง (CPU)

2. การเอาชนะการหยุดชะงัก

เมื่อโฮสต์ถูกบังคับให้ ซิงค์ หลังจากทุกปฏิบัติการ ช่วงเวลาที่เกิดขึ้นระหว่างการประมวลผลระหว่างหน่วยประมวลผลกลาง (CPU) กับหน่วยประมวลผลกราฟิก (GPU) จะกลายเป็นปัจจัยหลักที่กำหนดประสิทธิภาพ ด้วยการใช้ประโยชน์จาก การดำเนินงานแบบไม่พร้อมกันหน่วยประมวลผลกลาง (CPU) จะยังคงทำงานต่อไป ในขณะที่หน่วยประมวลผลกราฟิก (GPU) ดำเนินการตามสตรีมของตนเอง ทำให้ประสิทธิภาพของฮาร์ดแวร์สูงสุด

$$\text{เวลาทั้งหมด} = \max(\text{งานของหน่วยประมวลผลกลาง}, \text{งานของหน่วยประมวลผลกราฟิก}) + \text{ค่าใช้จ่ายในการซิงค์}$$

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>